Windows Forms - Conversão de tipos de variáveis
Por regra, sempre a variável maior cabe na menor mas há regras para os tipos desses valores.
Imports System.Text 'necessário para as funções Encoding
Module Conversao
Public Sub ConversaoTipoVariaveis()
'definindo algumas variáveis
Dim GrandeValor As Integer = 100
Dim PequenoValor As Short
Dim MeuTexto As String = "100"
Option Strict Off
A Option Strict quando true não permite a conversão de tipos. Os tipos tem que ser exatamente os mesmos.
Por esse motivo, para fazer a conversão de tipos temos que colocar a Opção Strict em Off.
'convertendo - só possível se Option Strict Off - implicitamente
PequenoValor = GrandeValor ' Converte GrandeValor (32-bit) num tipo Short(16-bit).
GrandeValor = MeuTexto ' Converte string dentro da variável MeuTexto em um numero.
Dim StringTexto1 As String = "Alo"
Dim Numero1 As Integer
Numero1 = Val(StringTexto1) ' Numero terá o valor zero porque StringTexto não contém números.
'convertendo - explicitamente
PequenoValor = CType(GrandeValor, Short) ' Convertendo um número de 32-bits number para um número de 16-bits.
GrandeValor = CType(MeuTexto, Integer) ' Convertendo seu string em um número.
Dim StringTexto2 As String = "Alo"
Dim Numero2 As Integer
Numero2 = CInt(StringTexto2) ' Numero terá o valor zero porque StringTexto não contém números.
Dim MeuString As String
Dim MeuInteiro As Integer = 100
MeuString = MeuInteiro.ToString() ' Converte um número em um string.
Dim A As Integer = 7
Dim B As Double = 5.8
B = Convert.ToDouble(A)
Dim C As Single = A / B
' Dim D As String = "34.56"
' B = DirectCast(D, Double)
Dim bol As Boolean
bol = Convert.ToBoolean(A)
Dim b1 As Byte
b1 = Convert.ToByte(A)
Dim c1 As Char
c1 = Convert.ToChar(A) ' unicode
Dim d1 As DateTime
d1 = Convert.ToDateTime(A)
Dim d2 As Decimal
d2 = Convert.ToDecimal(A)
Dim d3 As Double
d3 = Convert.ToDouble(A)
Dim i2 As Int16
i2 = Convert.ToInt16(A)
Dim i3 As Int32
i3 = Convert.ToInt32(A)
Dim i4 As Int64
i4 = Convert.ToInt64(A)
Dim sb As SByte 'signedbyte
sb = Convert.ToSByte(A)
' Dim cs As Single ' cshort
' cs = Convert.cshort(A)
Dim sn1 As Single
sn1 = Convert.ToSingle(A)
Dim str1 As String
str1 = Convert.ToString(A)
' ParseFromStrings()
Dim bc = Boolean.Parse("True")
'bool bc = bool.Parse("True");
Dim dc = Double.Parse("99.993")
'double dc = double.parse("99.993");
Dim i = Integer.Parse("8")
'int i = int.Parse("8");
Dim cc = Char.Parse("w")
'char cc = char.parse("w");
End Sub
Convertendo um string de binário para UTF-8
Private Function BinaryUTF8ToString(ByVal Binary() As Byte) As String
Return System.Text.UnicodeEncoding.UTF8.GetString(Binary)
End Function
Convertendo um string para UTF-8 1
Public Function ConvertUTF8StringEncoding(ByVal StringToConvert As String, Optional ByVal TargetCharSet As String = "windows-1256") As Byte()
Dim ByteConvertedString() As Byte
Dim ByteStringToConvert() As Byte
Dim TargetEncoding As Encoding
ByteStringToConvert = Encoding.UTF8.GetBytes(StringToConvert.ToCharArray) ' Convert the string to a Byte array
TargetEncoding = Encoding.GetEncoding(TargetCharSet) ' Get the target encoding type
ByteConvertedString = Encoding.Convert(System.Text.Encoding.UTF8, TargetEncoding, ByteStringToConvert) ' Convert the byte array using the target encoding
Return ByteConvertedString
End Function
Convertendo um string para UTF-8 2
''' <summary>
''' Converte um string para UTF
''' </summary>
''' <param name="dado"></param>
''' <returns></returns>
Public Function Converte(ByVal dado As String) As String
Dim a As String
' a = dado
a = BinaryUTF8ToString(ConvertUTF8StringEncoding(dado)) '"ßáãÉ ÇáãÑßÒ "
While Left(a, 1) = " "
a = Mid(a, 2, 20000)
End While
While Right(a, 1) = " "
a = Left(a, Len(a) - 1)
End While
While Left(a, 1) = vbTab
a = Mid(a, 2, 20000)
End While
While Right(a, 1) = vbTab
a = Left(a, Len(a) - 1)
End While
'a = retiraAcentuacao(a)
'caracteres reservados do sql
a = Replace(a, "%", "")
a = Replace(a, "'", "´")
'palavras reservadas do SQL
a = Replace(a, "SELECT", "")
a = Replace(a, "DELETE", "")
a = Replace(a, "INSERT", "")
a = Replace(a, "UPDATE", "")
a = Replace(a, "TRUNCATE", "")
a = Replace(a, "select", "")
a = Replace(a, "delete", "")
a = Replace(a, "insert", "")
a = Replace(a, "update", "")
a = Replace(a, "truncate", "")
'não pode tirar : / (empresas com razão social S/A)
Return a
End Function
End Module